﻿<%@ Page Title="" Language="C#" MasterPageFile="~/Site.Master" AutoEventWireup="true" CodeBehind="Categoria.aspx.cs" Inherits="Presentation.Categoria" %>
<asp:Content ID="Content1" ContentPlaceHolderID="HeadContent" runat="server">
</asp:Content>
<asp:Content ID="Content2" ContentPlaceHolderID="MainContent" runat="server">
<%
    Business.EntradaBusiness entradaBusiness = new Business.EntradaBusiness(System.Web.Configuration.WebConfigurationManager.ConnectionStrings["ApplicationServices"].ToString());
    Business.CategoriaBusiness categoriaBusiness = new Business.CategoriaBusiness(System.Web.Configuration.WebConfigurationManager.ConnectionStrings["ApplicationServices"].ToString());
       
    String parametroRecibido = "";
    
       parametroRecibido = Request.QueryString["idCategoria"];
       
       int idCategoria = Int32.Parse(parametroRecibido);
       
       LinkedList<Entidad.Entrada> entradas = entradaBusiness.GetEntradasPorCategoria(idCategoria);

       if (entradas.Count == 0) {
           lblMensaje.Visible = true;
           lblMensaje.Text = "Esta Categoría no tiene entradas todavía, intente más tarde";
       }
           
       String nombreCategoria = categoriaBusiness.NombreCategoria(idCategoria);
       
       int idEntrada = 0;
       String vistaPrevia = "", titulo = "";
       
%>
    <br />
    <h2>
        Noticias</h2>
    <br />
    <h2> 
    <p>
        <asp:Label ID="lblMensaje" runat="server" Text="Label" Visible="False"></asp:Label>
    </p>
   </h2>
   <br />
    <div id="contenido">
        <center>
            <table id="secciones" width="600">
                <tr>
                    <td>
       
           <% foreach (Entidad.Entrada entradaActual in entradas) { 
           
                if (entradaActual.Titulo != null && entradaActual.Contenido != null)
               
               {

                   idEntrada = entradaActual.IdEntrada;

                   titulo = entradaActual.Titulo;
                   int limiteCadena = 150;
                   int tamanoCadena = entradaActual.Contenido.Length;

                   if (tamanoCadena <= 150)
                   {
                       vistaPrevia = entradaActual.Contenido;
                   }
                   else
                   {
                       Boolean salir = false;
                       while (salir != true)
                       {
                           String caracter = entradaActual.Contenido.Substring(limiteCadena, 1);

                           if (String.IsNullOrEmpty(caracter) == true || caracter == "." || caracter == " ")
                           {
                               vistaPrevia = entradaActual.Contenido;
                               vistaPrevia = vistaPrevia.Substring(0, limiteCadena) + "...";
                               salir = true;
                           }

                           else
                           {
                               limiteCadena++;
                           }
                       }
                   }
                 
           %>

           <table id="interna" width="600"> 
           <tr><td align="left"><font size="2" face="verdana" color="0466C7"><a href="Pagina.aspx?idEntrada=<% =idEntrada%>"><% =titulo%></a></font></td></tr>
           <tr><td align="left"><%=vistaPrevia%></td></tr>
           <tr><td align="right"><a href="Pagina.aspx?idEntrada=<% =idEntrada%>">[ver más]</a></td></tr>
           </table> 

           <%
               }
              }     
           %>
                    </td>
                </tr>
            </table>
        </center>
    </div>
</asp:Content>
